import 'dart:async';

import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:intl/intl.dart' as intl;

import 'app_localizations_en.dart';
import 'app_localizations_zh.dart';

// ignore_for_file: type=lint

/// Callers can lookup localized strings with an instance of AppLocalizations
/// returned by `AppLocalizations.of(context)`.
///
/// Applications need to include `AppLocalizations.delegate()` in their app's
/// `localizationDelegates` list, and the locales they support in the app's
/// `supportedLocales` list. For example:
///
/// ```dart
/// import 'gen_l10n/app_localizations.dart';
///
/// return MaterialApp(
///   localizationsDelegates: AppLocalizations.localizationsDelegates,
///   supportedLocales: AppLocalizations.supportedLocales,
///   home: MyApplicationHome(),
/// );
/// ```
///
/// ## Update pubspec.yaml
///
/// Please make sure to update your pubspec.yaml to include the following
/// packages:
///
/// ```yaml
/// dependencies:
///   # Internationalization support.
///   flutter_localizations:
///     sdk: flutter
///   intl: any # Use the pinned version from flutter_localizations
///
///   # Rest of dependencies
/// ```
///
/// ## iOS Applications
///
/// iOS applications define key application metadata, including supported
/// locales, in an Info.plist file that is built into the application bundle.
/// To configure the locales supported by your app, you’ll need to edit this
/// file.
///
/// First, open your project’s ios/Runner.xcworkspace Xcode workspace file.
/// Then, in the Project Navigator, open the Info.plist file under the Runner
/// project’s Runner folder.
///
/// Next, select the Information Property List item, select Add Item from the
/// Editor menu, then select Localizations from the pop-up menu.
///
/// Select and expand the newly-created Localizations item then, for each
/// locale your application supports, add a new item and select the locale
/// you wish to add from the pop-up menu in the Value field. This list should
/// be consistent with the languages listed in the AppLocalizations.supportedLocales
/// property.
abstract class AppLocalizations {
  AppLocalizations(String locale) : localeName = intl.Intl.canonicalizedLocale(locale.toString());

  final String localeName;

  static AppLocalizations of(BuildContext context) {
    return Localizations.of<AppLocalizations>(context, AppLocalizations)!;
  }

  static const LocalizationsDelegate<AppLocalizations> delegate = _AppLocalizationsDelegate();

  /// A list of this localizations delegate along with the default localizations
  /// delegates.
  ///
  /// Returns a list of localizations delegates containing this delegate along with
  /// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate,
  /// and GlobalWidgetsLocalizations.delegate.
  ///
  /// Additional delegates can be added by appending to this list in
  /// MaterialApp. This list does not have to be used at all if a custom list
  /// of delegates is preferred or required.
  static const List<LocalizationsDelegate<dynamic>> localizationsDelegates = <LocalizationsDelegate<dynamic>>[
    delegate,
    GlobalMaterialLocalizations.delegate,
    GlobalCupertinoLocalizations.delegate,
    GlobalWidgetsLocalizations.delegate,
  ];

  /// A list of this localizations delegate's supported locales.
  static const List<Locale> supportedLocales = <Locale>[
    Locale('en'),
    Locale('zh')
  ];

  /// No description provided for @appTitle.
  ///
  /// In zh, this message translates to:
  /// **'我的大学'**
  String get appTitle;

  /// No description provided for @ok.
  ///
  /// In zh, this message translates to:
  /// **'确定'**
  String get ok;

  /// No description provided for @cancel.
  ///
  /// In zh, this message translates to:
  /// **'取消'**
  String get cancel;

  /// No description provided for @fileOpen.
  ///
  /// In zh, this message translates to:
  /// **'打开文件'**
  String get fileOpen;

  /// No description provided for @fileOpenWith.
  ///
  /// In zh, this message translates to:
  /// **'用其他应用打开'**
  String get fileOpenWith;

  /// No description provided for @complete.
  ///
  /// In zh, this message translates to:
  /// **'完成'**
  String get complete;

  /// No description provided for @submit.
  ///
  /// In zh, this message translates to:
  /// **'提交'**
  String get submit;

  /// No description provided for @delete.
  ///
  /// In zh, this message translates to:
  /// **'删除'**
  String get delete;

  /// No description provided for @scanPage.
  ///
  /// In zh, this message translates to:
  /// **'扫描当前页面'**
  String get scanPage;

  /// No description provided for @add.
  ///
  /// In zh, this message translates to:
  /// **'添加'**
  String get add;

  /// No description provided for @share.
  ///
  /// In zh, this message translates to:
  /// **'分享'**
  String get share;

  /// No description provided for @close.
  ///
  /// In zh, this message translates to:
  /// **'关闭'**
  String get close;

  /// No description provided for @pause.
  ///
  /// In zh, this message translates to:
  /// **'暂停'**
  String get pause;

  /// No description provided for @tip.
  ///
  /// In zh, this message translates to:
  /// **'提示'**
  String get tip;

  /// No description provided for @tabHome.
  ///
  /// In zh, this message translates to:
  /// **'首页'**
  String get tabHome;

  /// No description provided for @tabNews.
  ///
  /// In zh, this message translates to:
  /// **'新闻'**
  String get tabNews;

  /// No description provided for @tabIM.
  ///
  /// In zh, this message translates to:
  /// **'通讯'**
  String get tabIM;

  /// No description provided for @tabApps.
  ///
  /// In zh, this message translates to:
  /// **'应用'**
  String get tabApps;

  /// No description provided for @tabProfile.
  ///
  /// In zh, this message translates to:
  /// **'我的'**
  String get tabProfile;

  /// No description provided for @pullToRefresh.
  ///
  /// In zh, this message translates to:
  /// **'下拉刷新'**
  String get pullToRefresh;

  /// No description provided for @releaseToRefresh.
  ///
  /// In zh, this message translates to:
  /// **'松开刷新'**
  String get releaseToRefresh;

  /// No description provided for @refreshing.
  ///
  /// In zh, this message translates to:
  /// **'正在请求数据...'**
  String get refreshing;

  /// No description provided for @refreshComplete.
  ///
  /// In zh, this message translates to:
  /// **'刷新完成！'**
  String get refreshComplete;

  /// No description provided for @refreshFailed.
  ///
  /// In zh, this message translates to:
  /// **'刷新失败！'**
  String get refreshFailed;

  /// No description provided for @error.
  ///
  /// In zh, this message translates to:
  /// **'错误'**
  String get error;

  /// No description provided for @noData.
  ///
  /// In zh, this message translates to:
  /// **'暂无数据'**
  String get noData;

  /// No description provided for @loadFailed.
  ///
  /// In zh, this message translates to:
  /// **'加载失败'**
  String get loadFailed;

  /// No description provided for @login.
  ///
  /// In zh, this message translates to:
  /// **'登录'**
  String get login;

  /// No description provided for @loginQQ.
  ///
  /// In zh, this message translates to:
  /// **'QQ'**
  String get loginQQ;

  /// No description provided for @loginWechat.
  ///
  /// In zh, this message translates to:
  /// **'微信'**
  String get loginWechat;

  /// No description provided for @loginScan.
  ///
  /// In zh, this message translates to:
  /// **'新生扫码'**
  String get loginScan;

  /// No description provided for @loginAsStudent.
  ///
  /// In zh, this message translates to:
  /// **'我是学生'**
  String get loginAsStudent;

  /// No description provided for @loginAsTeacher.
  ///
  /// In zh, this message translates to:
  /// **'我是教师'**
  String get loginAsTeacher;

  /// No description provided for @loginAsNew.
  ///
  /// In zh, this message translates to:
  /// **'我是新生'**
  String get loginAsNew;

  /// No description provided for @loginOtherMethods.
  ///
  /// In zh, this message translates to:
  /// **'其他登录方式'**
  String get loginOtherMethods;

  /// No description provided for @passwordLogin.
  ///
  /// In zh, this message translates to:
  /// **'密码登录'**
  String get passwordLogin;

  /// No description provided for @smsLogin.
  ///
  /// In zh, this message translates to:
  /// **'短信登录'**
  String get smsLogin;

  /// No description provided for @forgotPassword.
  ///
  /// In zh, this message translates to:
  /// **'忘记密码'**
  String get forgotPassword;

  /// No description provided for @getSmsCode.
  ///
  /// In zh, this message translates to:
  /// **'获取短信码'**
  String get getSmsCode;

  /// No description provided for @agreePolicy.
  ///
  /// In zh, this message translates to:
  /// **'登录即同意'**
  String get agreePolicy;

  /// No description provided for @privacyPolicy.
  ///
  /// In zh, this message translates to:
  /// **'隐私政策'**
  String get privacyPolicy;

  /// No description provided for @contactForHelp.
  ///
  /// In zh, this message translates to:
  /// **'如有问题请拨打'**
  String get contactForHelp;

  /// No description provided for @enterUserId.
  ///
  /// In zh, this message translates to:
  /// **'请输入学号/工号'**
  String get enterUserId;

  /// No description provided for @enterPassword.
  ///
  /// In zh, this message translates to:
  /// **'请输入密码'**
  String get enterPassword;

  /// No description provided for @enterPhone.
  ///
  /// In zh, this message translates to:
  /// **'请输入手机号码'**
  String get enterPhone;

  /// No description provided for @enterSmsCode.
  ///
  /// In zh, this message translates to:
  /// **'请输入短信验证码'**
  String get enterSmsCode;

  /// No description provided for @retryInSeconds.
  ///
  /// In zh, this message translates to:
  /// **'秒后重试'**
  String get retryInSeconds;

  /// No description provided for @phoneEmptyError.
  ///
  /// In zh, this message translates to:
  /// **'手机号不能为空'**
  String get phoneEmptyError;

  /// No description provided for @phoneLengthError.
  ///
  /// In zh, this message translates to:
  /// **'手机号必须为11位数字'**
  String get phoneLengthError;

  /// No description provided for @smsCodeLengthError.
  ///
  /// In zh, this message translates to:
  /// **'验证码必须为6位数字'**
  String get smsCodeLengthError;

  /// No description provided for @passwordLengthError.
  ///
  /// In zh, this message translates to:
  /// **'密码必须为6-12位数字和字母的组合'**
  String get passwordLengthError;

  /// No description provided for @selectFromGallery.
  ///
  /// In zh, this message translates to:
  /// **'从相册中选取'**
  String get selectFromGallery;

  /// No description provided for @userId.
  ///
  /// In zh, this message translates to:
  /// **'学工号'**
  String get userId;

  /// No description provided for @idPassportNumber.
  ///
  /// In zh, this message translates to:
  /// **'身份证/护照号'**
  String get idPassportNumber;

  /// No description provided for @passwordAppeal.
  ///
  /// In zh, this message translates to:
  /// **'密码申诉'**
  String get passwordAppeal;

  /// No description provided for @newPassword.
  ///
  /// In zh, this message translates to:
  /// **'请输入新密码'**
  String get newPassword;

  /// No description provided for @confirmNewPassword.
  ///
  /// In zh, this message translates to:
  /// **'请再次输入'**
  String get confirmNewPassword;

  /// No description provided for @enterName.
  ///
  /// In zh, this message translates to:
  /// **'申请人姓名'**
  String get enterName;

  /// No description provided for @enterUserIdNumber.
  ///
  /// In zh, this message translates to:
  /// **'身份证/护照号'**
  String get enterUserIdNumber;

  /// No description provided for @uploadIdSelfie.
  ///
  /// In zh, this message translates to:
  /// **'自拍身份证/护照上传'**
  String get uploadIdSelfie;

  /// No description provided for @uploadOneCard.
  ///
  /// In zh, this message translates to:
  /// **'一卡通上传'**
  String get uploadOneCard;

  /// No description provided for @searchPlaceholder.
  ///
  /// In zh, this message translates to:
  /// **'搜索应用'**
  String get searchPlaceholder;

  /// No description provided for @recentSearch.
  ///
  /// In zh, this message translates to:
  /// **'最近搜索'**
  String get recentSearch;

  /// No description provided for @recommendedApps.
  ///
  /// In zh, this message translates to:
  /// **'应用推荐'**
  String get recommendedApps;

  /// No description provided for @search.
  ///
  /// In zh, this message translates to:
  /// **'搜索'**
  String get search;

  /// No description provided for @commonApps.
  ///
  /// In zh, this message translates to:
  /// **'常用应用'**
  String get commonApps;

  /// No description provided for @viewAll.
  ///
  /// In zh, this message translates to:
  /// **'查看全部'**
  String get viewAll;

  /// No description provided for @viewAllSchedule.
  ///
  /// In zh, this message translates to:
  /// **'查看全部日程'**
  String get viewAllSchedule;

  /// No description provided for @viewAllMessages.
  ///
  /// In zh, this message translates to:
  /// **'查看全部消息'**
  String get viewAllMessages;

  /// No description provided for @mySchedule.
  ///
  /// In zh, this message translates to:
  /// **'我的日程'**
  String get mySchedule;

  /// No description provided for @homeImage.
  ///
  /// In zh, this message translates to:
  /// **'首页图片'**
  String get homeImage;

  /// No description provided for @todo.
  ///
  /// In zh, this message translates to:
  /// **'待办事项'**
  String get todo;

  /// No description provided for @notificationCenter.
  ///
  /// In zh, this message translates to:
  /// **'通知中心'**
  String get notificationCenter;

  /// No description provided for @homeRedefine.
  ///
  /// In zh, this message translates to:
  /// **'首页已重新定义'**
  String get homeRedefine;

  /// No description provided for @noSearchHistory.
  ///
  /// In zh, this message translates to:
  /// **'没有搜索历史'**
  String get noSearchHistory;

  /// No description provided for @searchResults.
  ///
  /// In zh, this message translates to:
  /// **'搜索结果'**
  String get searchResults;

  /// No description provided for @username.
  ///
  /// In zh, this message translates to:
  /// **'用户名'**
  String get username;

  /// No description provided for @userInfo.
  ///
  /// In zh, this message translates to:
  /// **'当前用户信息'**
  String get userInfo;

  /// No description provided for @universitySite.
  ///
  /// In zh, this message translates to:
  /// **'师大官网'**
  String get universitySite;

  /// No description provided for @campusSite.
  ///
  /// In zh, this message translates to:
  /// **'校园官网'**
  String get campusSite;

  /// No description provided for @itCenter.
  ///
  /// In zh, this message translates to:
  /// **'信息化中心'**
  String get itCenter;

  /// No description provided for @messages.
  ///
  /// In zh, this message translates to:
  /// **'消息'**
  String get messages;

  /// No description provided for @addressBook.
  ///
  /// In zh, this message translates to:
  /// **'通讯录'**
  String get addressBook;

  /// No description provided for @newContact.
  ///
  /// In zh, this message translates to:
  /// **'新的联系人'**
  String get newContact;

  /// No description provided for @organization.
  ///
  /// In zh, this message translates to:
  /// **'组织机构'**
  String get organization;

  /// No description provided for @groupChat.
  ///
  /// In zh, this message translates to:
  /// **'群聊'**
  String get groupChat;

  /// No description provided for @contact.
  ///
  /// In zh, this message translates to:
  /// **'联系人'**
  String get contact;

  /// No description provided for @chatHistory.
  ///
  /// In zh, this message translates to:
  /// **'聊天记录'**
  String get chatHistory;

  /// No description provided for @noContacts.
  ///
  /// In zh, this message translates to:
  /// **'暂无联系人'**
  String get noContacts;

  /// No description provided for @createGroup.
  ///
  /// In zh, this message translates to:
  /// **'建新群'**
  String get createGroup;

  /// No description provided for @noGroupChat.
  ///
  /// In zh, this message translates to:
  /// **'暂无群聊'**
  String get noGroupChat;

  /// No description provided for @myGroups.
  ///
  /// In zh, this message translates to:
  /// **'我的群聊'**
  String get myGroups;

  /// No description provided for @myContacts.
  ///
  /// In zh, this message translates to:
  /// **'我的联系人'**
  String get myContacts;

  /// No description provided for @addFriend.
  ///
  /// In zh, this message translates to:
  /// **'添加好友'**
  String get addFriend;

  /// No description provided for @addGroupChat.
  ///
  /// In zh, this message translates to:
  /// **'添加群聊'**
  String get addGroupChat;

  /// No description provided for @unpin.
  ///
  /// In zh, this message translates to:
  /// **'取消置顶'**
  String get unpin;

  /// No description provided for @pin.
  ///
  /// In zh, this message translates to:
  /// **'置顶'**
  String get pin;

  /// No description provided for @clearChat.
  ///
  /// In zh, this message translates to:
  /// **'清除聊天'**
  String get clearChat;

  /// No description provided for @noConversations.
  ///
  /// In zh, this message translates to:
  /// **'暂无会话'**
  String get noConversations;

  /// No description provided for @groupDetails.
  ///
  /// In zh, this message translates to:
  /// **'群聊详情'**
  String get groupDetails;

  /// No description provided for @sendMessage.
  ///
  /// In zh, this message translates to:
  /// **'发送消息'**
  String get sendMessage;

  /// No description provided for @imNotSupport.
  ///
  /// In zh, this message translates to:
  /// **'不支持的消息'**
  String get imNotSupport;

  /// No description provided for @startChat.
  ///
  /// In zh, this message translates to:
  /// **'发起聊天'**
  String get startChat;

  /// No description provided for @scan.
  ///
  /// In zh, this message translates to:
  /// **'扫一扫'**
  String get scan;

  /// No description provided for @ecard.
  ///
  /// In zh, this message translates to:
  /// **'一卡通'**
  String get ecard;

  /// No description provided for @blocked.
  ///
  /// In zh, this message translates to:
  /// **'黑名单'**
  String get blocked;

  /// No description provided for @removeFriend.
  ///
  /// In zh, this message translates to:
  /// **'删除好友'**
  String get removeFriend;

  /// remove friends
  ///
  /// In zh, this message translates to:
  /// **'该操作将要删除好友“{amount}”，是否继续？'**
  String removeFriendConfirm(int amount);

  /// No description provided for @noSign.
  ///
  /// In zh, this message translates to:
  /// **'暂无状态描述'**
  String get noSign;

  /// No description provided for @sign.
  ///
  /// In zh, this message translates to:
  /// **'我的状态'**
  String get sign;

  /// group
  ///
  /// In zh, this message translates to:
  /// **'{amount}发起的群聊'**
  String groupCreatedBy(int amount);

  /// No description provided for @selectNoContacts.
  ///
  /// In zh, this message translates to:
  /// **'请选择要群聊的好友。'**
  String get selectNoContacts;

  /// No description provided for @appCenter.
  ///
  /// In zh, this message translates to:
  /// **'应用中心'**
  String get appCenter;

  /// No description provided for @myFavorites.
  ///
  /// In zh, this message translates to:
  /// **'我的收藏'**
  String get myFavorites;

  /// No description provided for @favorite.
  ///
  /// In zh, this message translates to:
  /// **'收藏'**
  String get favorite;

  /// No description provided for @unfavorite.
  ///
  /// In zh, this message translates to:
  /// **'取消收藏'**
  String get unfavorite;

  /// No description provided for @noFavorites.
  ///
  /// In zh, this message translates to:
  /// **'暂无收藏'**
  String get noFavorites;

  /// No description provided for @favoriteSuccess.
  ///
  /// In zh, this message translates to:
  /// **'收藏成功'**
  String get favoriteSuccess;

  /// No description provided for @unfavoriteSuccess.
  ///
  /// In zh, this message translates to:
  /// **'取消成功'**
  String get unfavoriteSuccess;

  /// No description provided for @customHome.
  ///
  /// In zh, this message translates to:
  /// **'自定义首页'**
  String get customHome;

  /// No description provided for @noAppFound.
  ///
  /// In zh, this message translates to:
  /// **'未找到相关应用'**
  String get noAppFound;

  /// No description provided for @appSearch.
  ///
  /// In zh, this message translates to:
  /// **'搜索'**
  String get appSearch;

  /// No description provided for @appCatalogs.
  ///
  /// In zh, this message translates to:
  /// **'分类'**
  String get appCatalogs;

  /// No description provided for @appDepartment.
  ///
  /// In zh, this message translates to:
  /// **'部门'**
  String get appDepartment;

  /// No description provided for @appWidget.
  ///
  /// In zh, this message translates to:
  /// **'小部件'**
  String get appWidget;

  /// No description provided for @appNonCollect.
  ///
  /// In zh, this message translates to:
  /// **'已取消关注！'**
  String get appNonCollect;

  /// No description provided for @appCollected.
  ///
  /// In zh, this message translates to:
  /// **'已关注！'**
  String get appCollected;

  /// No description provided for @appLaunchFailed.
  ///
  /// In zh, this message translates to:
  /// **'无法加载该应用！'**
  String get appLaunchFailed;

  /// No description provided for @personalInfo.
  ///
  /// In zh, this message translates to:
  /// **'个人资料'**
  String get personalInfo;

  /// No description provided for @changePassword.
  ///
  /// In zh, this message translates to:
  /// **'修改登录密码'**
  String get changePassword;

  /// No description provided for @appLock.
  ///
  /// In zh, this message translates to:
  /// **'应用锁'**
  String get appLock;

  /// No description provided for @contacts.
  ///
  /// In zh, this message translates to:
  /// **'通讯录'**
  String get contacts;

  /// No description provided for @clearCache.
  ///
  /// In zh, this message translates to:
  /// **'缓存清理'**
  String get clearCache;

  /// No description provided for @updateVersion.
  ///
  /// In zh, this message translates to:
  /// **'版本更新'**
  String get updateVersion;

  /// No description provided for @appLockSettings.
  ///
  /// In zh, this message translates to:
  /// **'应用锁设置'**
  String get appLockSettings;

  /// No description provided for @feedback.
  ///
  /// In zh, this message translates to:
  /// **'意见反馈'**
  String get feedback;

  /// No description provided for @shareQRCode.
  ///
  /// In zh, this message translates to:
  /// **'分享二维码'**
  String get shareQRCode;

  /// No description provided for @unbindWeChat.
  ///
  /// In zh, this message translates to:
  /// **'解除微信绑定'**
  String get unbindWeChat;

  /// No description provided for @unbindQQ.
  ///
  /// In zh, this message translates to:
  /// **'解除QQ绑定'**
  String get unbindQQ;

  /// No description provided for @idNumber.
  ///
  /// In zh, this message translates to:
  /// **'证件号'**
  String get idNumber;

  /// No description provided for @name.
  ///
  /// In zh, this message translates to:
  /// **'姓名'**
  String get name;

  /// No description provided for @gender.
  ///
  /// In zh, this message translates to:
  /// **'性别'**
  String get gender;

  /// No description provided for @phone.
  ///
  /// In zh, this message translates to:
  /// **'手机'**
  String get phone;

  /// No description provided for @email.
  ///
  /// In zh, this message translates to:
  /// **'邮箱'**
  String get email;

  /// No description provided for @currentPhone.
  ///
  /// In zh, this message translates to:
  /// **'您当前的手机号码是'**
  String get currentPhone;

  /// No description provided for @changePhoneWarning.
  ///
  /// In zh, this message translates to:
  /// **'手机号码是登录统一用户的重要方式，您确定要更改吗？'**
  String get changePhoneWarning;

  /// No description provided for @notifications.
  ///
  /// In zh, this message translates to:
  /// **'通知'**
  String get notifications;

  /// No description provided for @allNotifications.
  ///
  /// In zh, this message translates to:
  /// **'全部通知'**
  String get allNotifications;

  /// No description provided for @unreadNotifications.
  ///
  /// In zh, this message translates to:
  /// **'未读通知'**
  String get unreadNotifications;

  /// No description provided for @read.
  ///
  /// In zh, this message translates to:
  /// **'已阅'**
  String get read;

  /// No description provided for @oldPassword.
  ///
  /// In zh, this message translates to:
  /// **'请输入旧密码'**
  String get oldPassword;

  /// No description provided for @confirmPassword.
  ///
  /// In zh, this message translates to:
  /// **'请再次输入新密码'**
  String get confirmPassword;

  /// No description provided for @feedbackPlaceholder.
  ///
  /// In zh, this message translates to:
  /// **'请输入您的反馈'**
  String get feedbackPlaceholder;

  /// No description provided for @feedbackHint.
  ///
  /// In zh, this message translates to:
  /// **'在此写下你的建议或问题'**
  String get feedbackHint;

  /// No description provided for @logout.
  ///
  /// In zh, this message translates to:
  /// **'退出登录'**
  String get logout;

  /// clean cache
  ///
  /// In zh, this message translates to:
  /// **'操作成功，清理{amount}M存储空间。'**
  String cleanMessage(int amount);

  /// No description provided for @contactUs.
  ///
  /// In zh, this message translates to:
  /// **'联系我们'**
  String get contactUs;

  /// No description provided for @appBrowsing.
  ///
  /// In zh, this message translates to:
  /// **'应用浏览'**
  String get appBrowsing;

  /// No description provided for @play.
  ///
  /// In zh, this message translates to:
  /// **'播放'**
  String get play;

  /// No description provided for @noAppOpen.
  ///
  /// In zh, this message translates to:
  /// **'暂无应用打开'**
  String get noAppOpen;

  /// No description provided for @tabPreview.
  ///
  /// In zh, this message translates to:
  /// **'标签页预览'**
  String get tabPreview;

  /// No description provided for @noTabOpen.
  ///
  /// In zh, this message translates to:
  /// **'没有标签打开'**
  String get noTabOpen;

  /// No description provided for @playbackSpeed.
  ///
  /// In zh, this message translates to:
  /// **'播放倍率'**
  String get playbackSpeed;

  /// No description provided for @playlist.
  ///
  /// In zh, this message translates to:
  /// **'播放列表'**
  String get playlist;

  /// No description provided for @orderPlay.
  ///
  /// In zh, this message translates to:
  /// **'顺序播放'**
  String get orderPlay;

  /// No description provided for @loopPlaylist.
  ///
  /// In zh, this message translates to:
  /// **'列表循环'**
  String get loopPlaylist;

  /// No description provided for @loopSingle.
  ///
  /// In zh, this message translates to:
  /// **'单曲循环'**
  String get loopSingle;

  /// No description provided for @dragToSort.
  ///
  /// In zh, this message translates to:
  /// **'拖动按钮调整排序'**
  String get dragToSort;

  /// No description provided for @takePhoto.
  ///
  /// In zh, this message translates to:
  /// **'拍照'**
  String get takePhoto;

  /// No description provided for @chooseFromGallery.
  ///
  /// In zh, this message translates to:
  /// **'从相册中选择'**
  String get chooseFromGallery;

  /// No description provided for @loginError.
  ///
  /// In zh, this message translates to:
  /// **'账号或密码错误'**
  String get loginError;

  /// No description provided for @networkError.
  ///
  /// In zh, this message translates to:
  /// **'网络错误，请稍后重试'**
  String get networkError;

  /// No description provided for @loginSuccess.
  ///
  /// In zh, this message translates to:
  /// **'登录成功'**
  String get loginSuccess;

  /// No description provided for @feedbackReceived.
  ///
  /// In zh, this message translates to:
  /// **'已收到您的反馈'**
  String get feedbackReceived;

  /// No description provided for @copyLink.
  ///
  /// In zh, this message translates to:
  /// **'链接已复制到剪贴板'**
  String get copyLink;

  /// No description provided for @accountAndPasswordNotEmpty.
  ///
  /// In zh, this message translates to:
  /// **'账号和密码不能为空'**
  String get accountAndPasswordNotEmpty;

  /// No description provided for @agreeToPrivacyPolicy.
  ///
  /// In zh, this message translates to:
  /// **'请同意隐私政策'**
  String get agreeToPrivacyPolicy;

  /// No description provided for @addSchedule.
  ///
  /// In zh, this message translates to:
  /// **'添加日程'**
  String get addSchedule;

  /// No description provided for @contentNotSupported.
  ///
  /// In zh, this message translates to:
  /// **'该内容不支持'**
  String get contentNotSupported;

  /// No description provided for @addGroupMember.
  ///
  /// In zh, this message translates to:
  /// **'添加群成员'**
  String get addGroupMember;

  /// No description provided for @groupCreatedSuccess.
  ///
  /// In zh, this message translates to:
  /// **'创建群聊成功'**
  String get groupCreatedSuccess;

  /// No description provided for @groupCreateAddMembers.
  ///
  /// In zh, this message translates to:
  /// **'创建群聊请添加成员'**
  String get groupCreateAddMembers;

  /// No description provided for @noNewContacts.
  ///
  /// In zh, this message translates to:
  /// **'暂无新联系人'**
  String get noNewContacts;

  /// No description provided for @relatedChatHistory.
  ///
  /// In zh, this message translates to:
  /// **'相关聊天记录'**
  String get relatedChatHistory;

  /// No description provided for @globalSearch.
  ///
  /// In zh, this message translates to:
  /// **'全局搜索'**
  String get globalSearch;

  /// No description provided for @userDetails.
  ///
  /// In zh, this message translates to:
  /// **'用户详情'**
  String get userDetails;

  /// No description provided for @inputNotEmpty.
  ///
  /// In zh, this message translates to:
  /// **'输入不能为空'**
  String get inputNotEmpty;

  /// No description provided for @passwordMismatch.
  ///
  /// In zh, this message translates to:
  /// **'两次密码不一致'**
  String get passwordMismatch;

  /// No description provided for @changePhone.
  ///
  /// In zh, this message translates to:
  /// **'修改手机号码'**
  String get changePhone;

  /// No description provided for @male.
  ///
  /// In zh, this message translates to:
  /// **'男'**
  String get male;

  /// No description provided for @female.
  ///
  /// In zh, this message translates to:
  /// **'女'**
  String get female;

  /// No description provided for @myTodoList.
  ///
  /// In zh, this message translates to:
  /// **'我的待办'**
  String get myTodoList;

  /// No description provided for @myDiary.
  ///
  /// In zh, this message translates to:
  /// **'我的日记'**
  String get myDiary;

  /// No description provided for @versionUpdate.
  ///
  /// In zh, this message translates to:
  /// **'版本更新'**
  String get versionUpdate;

  /// No description provided for @appSwitchLanguage.
  ///
  /// In zh, this message translates to:
  /// **'切换语言'**
  String get appSwitchLanguage;

  /// No description provided for @applicationFavorites.
  ///
  /// In zh, this message translates to:
  /// **'应用收藏'**
  String get applicationFavorites;

  /// No description provided for @bluetoothService.
  ///
  /// In zh, this message translates to:
  /// **'蓝牙服务'**
  String get bluetoothService;

  /// No description provided for @resume.
  ///
  /// In zh, this message translates to:
  /// **'简历'**
  String get resume;

  /// No description provided for @employguide.
  ///
  /// In zh, this message translates to:
  /// **'就业指导'**
  String get employguide;

  /// No description provided for @yifuLibrary.
  ///
  /// In zh, this message translates to:
  /// **'逸夫图书馆'**
  String get yifuLibrary;

  /// No description provided for @literatureResources.
  ///
  /// In zh, this message translates to:
  /// **'文献资源'**
  String get literatureResources;

  /// No description provided for @digitalResources.
  ///
  /// In zh, this message translates to:
  /// **'数字资源'**
  String get digitalResources;

  /// No description provided for @copyrightNotice.
  ///
  /// In zh, this message translates to:
  /// **'版权公告'**
  String get copyrightNotice;

  /// No description provided for @databaseNavigation.
  ///
  /// In zh, this message translates to:
  /// **'数据库导航'**
  String get databaseNavigation;

  /// No description provided for @journalNavigation.
  ///
  /// In zh, this message translates to:
  /// **'期刊导航'**
  String get journalNavigation;

  /// No description provided for @printedResources.
  ///
  /// In zh, this message translates to:
  /// **'纸本资源'**
  String get printedResources;

  /// No description provided for @collectionSearch.
  ///
  /// In zh, this message translates to:
  /// **'馆藏书刊检索'**
  String get collectionSearch;

  /// No description provided for @printedBooks.
  ///
  /// In zh, this message translates to:
  /// **'纸本图书'**
  String get printedBooks;

  /// No description provided for @specialResources.
  ///
  /// In zh, this message translates to:
  /// **'特色资源'**
  String get specialResources;

  /// No description provided for @ancientBooks.
  ///
  /// In zh, this message translates to:
  /// **'古籍特藏'**
  String get ancientBooks;

  /// No description provided for @normalUniversityLibrary.
  ///
  /// In zh, this message translates to:
  /// **'师大文库'**
  String get normalUniversityLibrary;

  /// No description provided for @readerServices.
  ///
  /// In zh, this message translates to:
  /// **'读者服务'**
  String get readerServices;

  /// No description provided for @borrowingServices.
  ///
  /// In zh, this message translates to:
  /// **'借阅服务'**
  String get borrowingServices;

  /// No description provided for @entranceNotice.
  ///
  /// In zh, this message translates to:
  /// **'入馆须知'**
  String get entranceNotice;

  /// No description provided for @newBooksColumn.
  ///
  /// In zh, this message translates to:
  /// **'新书专栏'**
  String get newBooksColumn;

  /// No description provided for @bookBorrowing.
  ///
  /// In zh, this message translates to:
  /// **'图书借阅'**
  String get bookBorrowing;

  /// No description provided for @borrowingRules.
  ///
  /// In zh, this message translates to:
  /// **'借阅规则'**
  String get borrowingRules;

  /// No description provided for @selfBorrowAndReturn.
  ///
  /// In zh, this message translates to:
  /// **'自助借还'**
  String get selfBorrowAndReturn;

  /// No description provided for @graduationProcedures.
  ///
  /// In zh, this message translates to:
  /// **'离校手续'**
  String get graduationProcedures;

  /// No description provided for @spaceServices.
  ///
  /// In zh, this message translates to:
  /// **'空间服务'**
  String get spaceServices;

  /// No description provided for @seatReservation.
  ///
  /// In zh, this message translates to:
  /// **'座位预约'**
  String get seatReservation;

  /// No description provided for @spaceReservation.
  ///
  /// In zh, this message translates to:
  /// **'空间预约'**
  String get spaceReservation;

  /// No description provided for @digitalReadingSpace.
  ///
  /// In zh, this message translates to:
  /// **'数字阅读空间'**
  String get digitalReadingSpace;

  /// No description provided for @selfServiceLocker.
  ///
  /// In zh, this message translates to:
  /// **'自助电子存包柜'**
  String get selfServiceLocker;

  /// No description provided for @retrievalTerminal.
  ///
  /// In zh, this message translates to:
  /// **'检索终端'**
  String get retrievalTerminal;

  /// No description provided for @teachingAndTraining.
  ///
  /// In zh, this message translates to:
  /// **'教学培训'**
  String get teachingAndTraining;

  /// No description provided for @seriesLectures.
  ///
  /// In zh, this message translates to:
  /// **'系列讲座'**
  String get seriesLectures;

  /// No description provided for @dataProviderWorkshops.
  ///
  /// In zh, this message translates to:
  /// **'数据商专题'**
  String get dataProviderWorkshops;

  /// No description provided for @specialReservations.
  ///
  /// In zh, this message translates to:
  /// **'预约专场'**
  String get specialReservations;

  /// No description provided for @embeddedTeaching.
  ///
  /// In zh, this message translates to:
  /// **'嵌入教学培训'**
  String get embeddedTeaching;

  /// No description provided for @microClassroom.
  ///
  /// In zh, this message translates to:
  /// **'微课堂'**
  String get microClassroom;

  /// No description provided for @electiveCourse.
  ///
  /// In zh, this message translates to:
  /// **'公选课'**
  String get electiveCourse;

  /// No description provided for @openCourses.
  ///
  /// In zh, this message translates to:
  /// **'开放课程'**
  String get openCourses;

  /// No description provided for @coursewareDownload.
  ///
  /// In zh, this message translates to:
  /// **'课件下载'**
  String get coursewareDownload;

  /// No description provided for @interLibraryLoan.
  ///
  /// In zh, this message translates to:
  /// **'馆际互借'**
  String get interLibraryLoan;

  /// No description provided for @yuelushanLoan.
  ///
  /// In zh, this message translates to:
  /// **'岳麓山三校馆际互借'**
  String get yuelushanLoan;

  /// No description provided for @calsLoan.
  ///
  /// In zh, this message translates to:
  /// **'CALS馆际互借'**
  String get calsLoan;

  /// No description provided for @cashlDocumentDelivery.
  ///
  /// In zh, this message translates to:
  /// **'CASHL文献传递'**
  String get cashlDocumentDelivery;

  /// No description provided for @hunanResourcesSharing.
  ///
  /// In zh, this message translates to:
  /// **'湖南省高校资源共享'**
  String get hunanResourcesSharing;

  /// No description provided for @writersAssociationSharing.
  ///
  /// In zh, this message translates to:
  /// **'湖南省作协网资源共享'**
  String get writersAssociationSharing;

  /// No description provided for @latitudeInfoSharing.
  ///
  /// In zh, this message translates to:
  /// **'纬度信息文献互助平台'**
  String get latitudeInfoSharing;

  /// No description provided for @offCampusAccess.
  ///
  /// In zh, this message translates to:
  /// **'校外访问'**
  String get offCampusAccess;

  /// No description provided for @accessGuide.
  ///
  /// In zh, this message translates to:
  /// **'访问指南'**
  String get accessGuide;

  /// No description provided for @readingPromotion.
  ///
  /// In zh, this message translates to:
  /// **'阅读推广'**
  String get readingPromotion;

  /// No description provided for @readingFestival.
  ///
  /// In zh, this message translates to:
  /// **'读书节'**
  String get readingFestival;

  /// No description provided for @oneCampusOneBook.
  ///
  /// In zh, this message translates to:
  /// **'一校一书'**
  String get oneCampusOneBook;

  /// No description provided for @culturalExhibitions.
  ///
  /// In zh, this message translates to:
  /// **'文化展览'**
  String get culturalExhibitions;

  /// No description provided for @libraryCinema.
  ///
  /// In zh, this message translates to:
  /// **'图人影院'**
  String get libraryCinema;

  /// No description provided for @researchServices.
  ///
  /// In zh, this message translates to:
  /// **'科研服务'**
  String get researchServices;

  /// No description provided for @retrievalAndCitation.
  ///
  /// In zh, this message translates to:
  /// **'查收查引'**
  String get retrievalAndCitation;

  /// No description provided for @technologyNoveltySearch.
  ///
  /// In zh, this message translates to:
  /// **'科技查新'**
  String get technologyNoveltySearch;

  /// No description provided for @intellectualPropertyServices.
  ///
  /// In zh, this message translates to:
  /// **'知识产权服务'**
  String get intellectualPropertyServices;

  /// No description provided for @disciplineServices.
  ///
  /// In zh, this message translates to:
  /// **'学科服务'**
  String get disciplineServices;

  /// No description provided for @dataServices.
  ///
  /// In zh, this message translates to:
  /// **'数据服务'**
  String get dataServices;

  /// No description provided for @journalInclusionGuide.
  ///
  /// In zh, this message translates to:
  /// **'期刊收录指南'**
  String get journalInclusionGuide;

  /// No description provided for @paperPolishing.
  ///
  /// In zh, this message translates to:
  /// **'论文润色'**
  String get paperPolishing;

  /// No description provided for @interactiveCommunication.
  ///
  /// In zh, this message translates to:
  /// **'互动交流'**
  String get interactiveCommunication;

  /// No description provided for @readerConsultation.
  ///
  /// In zh, this message translates to:
  /// **'读者咨询'**
  String get readerConsultation;

  /// No description provided for @intelligentQA.
  ///
  /// In zh, this message translates to:
  /// **'智能问答'**
  String get intelligentQA;

  /// No description provided for @messageBoard.
  ///
  /// In zh, this message translates to:
  /// **'留言板'**
  String get messageBoard;

  /// No description provided for @phoneConsultation.
  ///
  /// In zh, this message translates to:
  /// **'电话咨询'**
  String get phoneConsultation;

  /// No description provided for @deanMailbox.
  ///
  /// In zh, this message translates to:
  /// **'院长信箱'**
  String get deanMailbox;

  /// No description provided for @faq.
  ///
  /// In zh, this message translates to:
  /// **'常见问题'**
  String get faq;

  /// No description provided for @readerRecommendations.
  ///
  /// In zh, this message translates to:
  /// **'读者荐购'**
  String get readerRecommendations;

  /// No description provided for @youChooseWeBuy.
  ///
  /// In zh, this message translates to:
  /// **'你选书我买单'**
  String get youChooseWeBuy;

  /// No description provided for @printBooksRecommendations.
  ///
  /// In zh, this message translates to:
  /// **'纸本图书荐购'**
  String get printBooksRecommendations;

  /// No description provided for @databaseRecommendations.
  ///
  /// In zh, this message translates to:
  /// **'数据库荐购'**
  String get databaseRecommendations;

  /// No description provided for @survey.
  ///
  /// In zh, this message translates to:
  /// **'问卷调查'**
  String get survey;

  /// No description provided for @bookDonation.
  ///
  /// In zh, this message translates to:
  /// **'图书捐赠'**
  String get bookDonation;

  /// No description provided for @donationInstructions.
  ///
  /// In zh, this message translates to:
  /// **'捐赠说明'**
  String get donationInstructions;

  /// No description provided for @studentTeams.
  ///
  /// In zh, this message translates to:
  /// **'学生团队'**
  String get studentTeams;

  /// No description provided for @libraryCommittee.
  ///
  /// In zh, this message translates to:
  /// **'图管会'**
  String get libraryCommittee;

  /// No description provided for @downloadCenter.
  ///
  /// In zh, this message translates to:
  /// **'下载中心'**
  String get downloadCenter;

  /// No description provided for @fileDownloads.
  ///
  /// In zh, this message translates to:
  /// **'文件下载'**
  String get fileDownloads;

  /// No description provided for @aboutUs.
  ///
  /// In zh, this message translates to:
  /// **'关于我们'**
  String get aboutUs;

  /// No description provided for @libraryOverview.
  ///
  /// In zh, this message translates to:
  /// **'本馆概况'**
  String get libraryOverview;

  /// No description provided for @libraryAppearance.
  ///
  /// In zh, this message translates to:
  /// **'馆色风貌'**
  String get libraryAppearance;

  /// No description provided for @organizationalStructure.
  ///
  /// In zh, this message translates to:
  /// **'组织机构'**
  String get organizationalStructure;

  /// No description provided for @collectionLayout.
  ///
  /// In zh, this message translates to:
  /// **'馆藏布局'**
  String get collectionLayout;

  /// No description provided for @yueluStudy.
  ///
  /// In zh, this message translates to:
  /// **'岳麓书苑'**
  String get yueluStudy;

  /// No description provided for @partyBuilding.
  ///
  /// In zh, this message translates to:
  /// **'党建园地'**
  String get partyBuilding;

  /// No description provided for @collegeMaterialsRoom.
  ///
  /// In zh, this message translates to:
  /// **'学院资料室'**
  String get collegeMaterialsRoom;

  /// No description provided for @informationCenter.
  ///
  /// In zh, this message translates to:
  /// **'信息化中心'**
  String get informationCenter;

  /// No description provided for @networkSecurity.
  ///
  /// In zh, this message translates to:
  /// **'网络安全'**
  String get networkSecurity;

  /// No description provided for @securityAnnouncements.
  ///
  /// In zh, this message translates to:
  /// **'安全公告'**
  String get securityAnnouncements;

  /// No description provided for @gradeProtection.
  ///
  /// In zh, this message translates to:
  /// **'等级保护'**
  String get gradeProtection;

  /// No description provided for @virusWarning.
  ///
  /// In zh, this message translates to:
  /// **'病毒预警'**
  String get virusWarning;

  /// No description provided for @networkRegulations.
  ///
  /// In zh, this message translates to:
  /// **'网络法规'**
  String get networkRegulations;

  /// No description provided for @higherRegulations.
  ///
  /// In zh, this message translates to:
  /// **'上级法规'**
  String get higherRegulations;

  /// No description provided for @campusRules.
  ///
  /// In zh, this message translates to:
  /// **'校园规章'**
  String get campusRules;

  /// No description provided for @serviceGuide.
  ///
  /// In zh, this message translates to:
  /// **'服务指南'**
  String get serviceGuide;

  /// No description provided for @commonQnA.
  ///
  /// In zh, this message translates to:
  /// **'常见Q&A'**
  String get commonQnA;

  /// No description provided for @playCenter.
  ///
  /// In zh, this message translates to:
  /// **'播放中心'**
  String get playCenter;

  /// No description provided for @playlistEmpty.
  ///
  /// In zh, this message translates to:
  /// **'播放列表空空如也'**
  String get playlistEmpty;

  /// No description provided for @addFavorites.
  ///
  /// In zh, this message translates to:
  /// **'去添加一些你喜欢的音频吧！'**
  String get addFavorites;

  /// No description provided for @title.
  ///
  /// In zh, this message translates to:
  /// **'标题'**
  String get title;

  /// No description provided for @content.
  ///
  /// In zh, this message translates to:
  /// **'内容'**
  String get content;

  /// No description provided for @date.
  ///
  /// In zh, this message translates to:
  /// **'日期'**
  String get date;

  /// No description provided for @startTime.
  ///
  /// In zh, this message translates to:
  /// **'开始时间'**
  String get startTime;

  /// No description provided for @endTime.
  ///
  /// In zh, this message translates to:
  /// **'结束时间'**
  String get endTime;

  /// No description provided for @reminderTime.
  ///
  /// In zh, this message translates to:
  /// **'提醒时间设置'**
  String get reminderTime;

  /// No description provided for @repeatReminder.
  ///
  /// In zh, this message translates to:
  /// **'是否重复提醒'**
  String get repeatReminder;

  /// No description provided for @priority.
  ///
  /// In zh, this message translates to:
  /// **'优先级'**
  String get priority;

  /// No description provided for @createSchedule.
  ///
  /// In zh, this message translates to:
  /// **'创建日程'**
  String get createSchedule;

  /// No description provided for @settings.
  ///
  /// In zh, this message translates to:
  /// **'设置'**
  String get settings;

  /// No description provided for @editProfile.
  ///
  /// In zh, this message translates to:
  /// **'编辑资料'**
  String get editProfile;

  /// No description provided for @accountSettings.
  ///
  /// In zh, this message translates to:
  /// **'账号设置'**
  String get accountSettings;

  /// No description provided for @notificationSettings.
  ///
  /// In zh, this message translates to:
  /// **'消息设置'**
  String get notificationSettings;

  /// No description provided for @personalizedRecommendations.
  ///
  /// In zh, this message translates to:
  /// **'个性化推荐设置'**
  String get personalizedRecommendations;

  /// No description provided for @pushNotifications.
  ///
  /// In zh, this message translates to:
  /// **'推送通知设置'**
  String get pushNotifications;

  /// No description provided for @darkMode.
  ///
  /// In zh, this message translates to:
  /// **'深色模式'**
  String get darkMode;

  /// No description provided for @personalInfoQuery.
  ///
  /// In zh, this message translates to:
  /// **'个人信息查询与管理'**
  String get personalInfoQuery;

  /// No description provided for @basicEdition.
  ///
  /// In zh, this message translates to:
  /// **'基础版'**
  String get basicEdition;

  /// No description provided for @checkForUpdates.
  ///
  /// In zh, this message translates to:
  /// **'检查更新'**
  String get checkForUpdates;

  /// No description provided for @about.
  ///
  /// In zh, this message translates to:
  /// **'关于'**
  String get about;

  /// No description provided for @currentVersion.
  ///
  /// In zh, this message translates to:
  /// **'当前版本'**
  String get currentVersion;

  /// No description provided for @all.
  ///
  /// In zh, this message translates to:
  /// **'全部'**
  String get all;

  /// No description provided for @efficiency.
  ///
  /// In zh, this message translates to:
  /// **'效率'**
  String get efficiency;

  /// No description provided for @business.
  ///
  /// In zh, this message translates to:
  /// **'业务'**
  String get business;

  /// No description provided for @learning.
  ///
  /// In zh, this message translates to:
  /// **'学习'**
  String get learning;

  /// No description provided for @information.
  ///
  /// In zh, this message translates to:
  /// **'资讯'**
  String get information;

  /// No description provided for @office.
  ///
  /// In zh, this message translates to:
  /// **'办公'**
  String get office;
}

class _AppLocalizationsDelegate extends LocalizationsDelegate<AppLocalizations> {
  const _AppLocalizationsDelegate();

  @override
  Future<AppLocalizations> load(Locale locale) {
    return SynchronousFuture<AppLocalizations>(lookupAppLocalizations(locale));
  }

  @override
  bool isSupported(Locale locale) => <String>['en', 'zh'].contains(locale.languageCode);

  @override
  bool shouldReload(_AppLocalizationsDelegate old) => false;
}

AppLocalizations lookupAppLocalizations(Locale locale) {


  // Lookup logic when only language code is specified.
  switch (locale.languageCode) {
    case 'en': return AppLocalizationsEn();
    case 'zh': return AppLocalizationsZh();
  }

  throw FlutterError(
    'AppLocalizations.delegate failed to load unsupported locale "$locale". This is likely '
    'an issue with the localizations generation tool. Please file an issue '
    'on GitHub with a reproducible sample app and the gen-l10n configuration '
    'that was used.'
  );
}
